Service provision system for communications networks

ABSTRACT

A services management system can provide services to a mobile user, via a combination of network platforms. The system uses &#34;Co-operating Intelligent Software Agent&#34; technology in a heterogeneous agent architecture to provide enough flexibility to deal with changing network constraints, for instance as the user moves. In an example, a fixed broadband network might be used in combination with radio transmitters of a mobile network. The agent architecture, involving autonomous agents working co-operatively, forms a layered system using the underlying fixed network for inter-agent communication. In an application, a mobile user might move from a cell of the mobile network which can provide relatively wide bandwidth to one which can only provide limited bandwidth. The service management system can advise the user what services are available in either cell, at what price, based on current bandwidth usage at the two locations. If the user was already using a service which became unavailable in the new cell, the system will advise the user and, if appropriate, put the service effectively on hold until the user enters a cell in which the service is available once more.

BACKGROUND OF THE INVENTION

The present invention relates to service provision in communicationsnetworks and finds particular application where a communications user ismobile.

FIELD OF THE INVENTION

Communication networks are growing increasingly complex as theinformation technology (IT) industry produces new and varied services tobe offered to customers. The rapid provision of these services isexpected to be a key feature in distinguishing different networkoperators. Competitive advantages can be gained by communicationsnetwork operators through the services that they offer, and theefficiency with which they manage those services. The customers (users)do not want to be aware of network complexity, such as the relationshipbetween fixed and mobile networks. All they want is simple access to anyservice, and this applies whether they are connected to a fixed networkor using mobile facilities.

SUMMARY OF THE INVENTION

Embodiments of the present invention provide a service managementsystem, which can be used in the provision of services to a mobile userby means of more than one network platform. In particular, embodimentsof the present invention can be used to provide services by means of acombination of a fixed and a mobile communications network, in spite ofthe differing constraints such as the more limited bandwidth availablein mobile networks.

It has been recognised, in making the present invention, that the use of"Cooperating Intelligent Software Agent" technology in a heterogeneousagent architecture can allow service management in a complex environmentsuch as the above. The basis for this technology is described in generalterms in the publication "Distributed Artificial Intelligence" by MHuhns, Volumes I and II, published by Pitman, Morgan and Kaufmann in1987. Indeed, cooperating intelligent agents can be used to providequality and flexibility of control sufficient to meet the demands ofleading-edge IT services, in spite of problems presented by multiplenetwork platforms with conflicting constraints.

Embodiments of the present invention can be described as having adistributed architecture based on specialised intelligent softwaresystems, that is agents, which cooperate to provide a range of services,some of which may be novel, across a network platform provided byintegration of, for instance, a mobile and a fixed network platform.Software agents for use in embodiments of the present invention can bedesigned to manage systems where there is a large amount of distributedinformation available and a large number of users with specific servicerequirements. Generally system management becomes more complex whereusers move between fixed and mobile networks while requiring/receivingservices. This raises the problem of unifying the provisioning ofservices across various network platforms (mobile and fixed) and theeffective management of the limited radio spectrum in contrast with theless constrained bandwidth in the fixed (broadband) networks.

A major problem foreseen with communications systems of the future issystem complexity which is expected to limit the ability to exploit andreliably control communication networks. Intelligent agents used inembodiments of the present invention can achieve simplicity androbustness by spreading a control system over a plurality of specialisedagents.

One type of agent provides the customer with an interface to manage thecustomer's interactions with the network, another cooperates to managethe network resources (cell bandwidth or capacity along the fixednetwork links) and a third type of agent facilitates specific servicesby linking network and customers together. As a result of agentsinteraction, intelligent services with special features that satisfy thecustomer and make better use of network resource, can be provided.

The agents accomplish their tasks by exploiting only local knowledge andusing limited communications to inform each other of their actionsand/or pass on knowledge. They negotiate with each other and by decidingthe best option allocate tasks within the system. Their distributednature makes them tolerant to both individual and multiple agentfailure. This agent-based approach gives fast, robust and near-optimalsolutions to resource allocation problems.

In addition to resource allocation, embodiments of the present inventionalso provide a mechanism by which service providers can make informationavailable to customers. That information can be simply advertising-basedbut it can also provide a menu of information which is dynamicallyupdated and from which the customer can select and activate serviceprovision. The updating can take into account real-time constraints,such as bandwidth availability to a mobile customer, so controllingoptions selectable by the customer in accordance with the real timeconstraints.

The options selectable could be controlled by being present or absentfrom a menu, or could be controlled according to content. For instance,a service could be available at different prices depending on areal-time constraint such as overall demand on bandwidth in a particularcell of a radio network.

BRIEF DESCRIPTION OF THE DRAWINGS

A service provision system according to an embodiment of the presentinvention will now be described, by way of example only, with referenceto the accompanying Figures in which:

FIG. 1 shows an environment in which the service provision system wouldbe advantageous;

FIG. 2 shows a schematic diagram of a system architecture for use in theservice provision system described below;

FIG. 3 shows schematically the relationship between network managementsoftware agents and a network over which they have control;

FIG. 4 shows schematically the internal structure of an agent; and

FIGS. 5, 6 and 7 show flow diagrams for three different scenarios foruse of the service provision system.

DETAILED DESCRIPTION OF EXAMPLARY EMBODIMENTS

Referring to FIG. 1, an environment in which the service provisionsystem might be applied comprises a fixed communications network 1,which may for instance be a broadband network, in combination with radiotransmitters 2 of a mobile network.

The fixed (broadband) network 1 is the main carrier of long distancetraffic and is represented for the purposes of this example to consistsolely of Digital Main Switching Units (DMSUs) 3 which are nearly fullyinterconnected. Houses 4, offices 5, other buildings etc. are assumed tobe connected in known manner to an appropriate node of the fixed network1.

The radio part of the network is arranged into large (˜10 km diameter)macro cells 6 and smaller (˜500 m diameter) micro cells 7. The formerprovide country wide coverage but a low bandwidth, the latter servicelocal `hotspots` with higher bandwidth available. Additional servicesare available through much higher bandwidth, small pico cells8--typically only a few meters across. These are assumed to be locatedin offices 5 and at special location points such as garages, railwaysstations, motorway service stations, shopping centres etc. All radiocell transmitters 2 are connected in known manner to their local fixednetwork node.

The customer (user) may be mobile, travelling across cell boundaries 9and requesting various services through his mobile handset, or may be ata fixed location having access to the integrated network through aterminal (ie video-telephone or computer terminal).

In this scenario, there will be at least one network provider involved,who provides and manages either one or both of the fixed and mobilenetworks concerned. There will also be at least one customer, who hasaccess to one or both of the networks and may require services such astelephone calls or data provision, and at least one service provider.The service provider(s) may be independent of the network provider andmerely provide services which are accessible by means of the network(s).

Normally any requested service will involve an end-to-end connectionacross the integrated network platform to another mobile/fixed customeror to a bank of data located anywhere in the network. For instance, thedata might comprise any kind of stored information (text file, imagefile, manual page) that the customer would like to access forinformation retrieval or storage.

System Architecture

Referring to FIG. 2, the following describes a heterogeneous systemarchitecture based on autonomous agents working cooperatively to solvevarious service management problems in the mobile and fixed integratednetwork (MFIN) 10, shown in FIG. 1.

The agents form a single layered system 25 using the underlying fixednetwork 1 for inter-agent communication.

The agents involved in the architecture can be grouped into threegeneric categories:

"Interface Agents" comprising Customer Agents (CA) 20 and Gateway Agents(GA) 21.

"Service Provider Agents" (SPAs) 22

"Network Management Agents" comprising Fixed Network Agents (FNA) 23 andCell Agents (CLA) 24

A Customer Agent CA 20 generally mediates between the agent system 25and a customer or service provider while a Gateway Agent GA 21 providesa link such as a port, or interface, between the agent system 25 andanother intelligent or non-intelligent management system (not shown)owned by an independent telecom operator. Hence, GAs 21 facilitate thetransfer of information or requests between the agent system 25 and theexternal world.

The Service Provision Agents 22 are each responsible for a specificservice, managing information about the provider(s) of that service andnegotiating with those providers who wish to sell their resources. In anexample, a customer might require some specific data but that same datamay be found at different locations. A Service Provider Agent 22 will beactivated in finding the optimal location from which the data will beprovided.

The Network Management Agents 23,24 are mainly responsible for managingresources in the fixed network (FNAs) 23 and in the mobile network(CLAs) 24. As shown in FIG. 2 the Cell Agents 24 can be of varioustypes, depending on the type of cell they are managing: Macro Cell Agent(CLA-M), Micro Cell Agent (CLA-m) or Pico Cell Agent (CLA-p). TheNetwork Management Agents 23,24 work cooperatively to collate theiravailable local resources (i.e. link capacities and cell bandwidth) in a"resource configuration" required for a particular service. They alsocontinuously update that resource configuration to deal with changes ofdelivery point for the service due to customer's mobility.

In principle, each agent is allowed to communicate with any other agentin the community with the exception of SPAs 22 which have communicationchannels only with Customer Agents (CAs). This provides a securitymeasure in that SPAs 22 for service providers who are independent of therelevant network providers) are prevented from having direct access tonetwork management or customer information. SPAs 22 areservice-specific, and actual provision of a service to the system 25 isdone by means of a CA 20. Hence, in practice, a CA 20 provides acustomer request to an SPA 22 which then decides which other CA 20(responsible for the resource required) should be contacted in providingthe resource. Thereafter, the CAs 20 involved, the one providing thecustomer request and the one associated with the resource, contact thenetwork management agents which will set up the service.

Agents communicate by passing messages of fixed format. Messages havethe generic form: [To, From, Job₋₋ ID, Content]

`To` identifies the agent or list of agents the message is sent to,`From` identifies the originator agent sending the message, "Job ID" isa marker used in tracking jobs through the system, and `Content` is theinter-agent message. When receiving a message each agent makes its owndecisions triggering an internal task and/or deciding to communicatewith other agents sending or requesting information.

Agents' Internal Architecture

Referring to FIG. 4, the agents all have the following generic internalcomponents: a parser 40, a world view 41 (database), a negotiator 42(responsible for buying/selling resources), and a resource controller 43(responsible for controlling the functional actions of the agent). Thesecommunicate by means of a common communication sytem or bus 44.

On receiving an incoming message from another agent, the parser 40compares the message against standard templates to see which moduleshould receive which message. For instance, a service₋₋ request would beprocessed by the negotiator 42 which would obtain information from theworld view 41 on the status of the resource and the tasks the agent canperform. In comparison a service₋₋ acceptance would be passed to theresource controller 43 which would update the world view's record ofactive services.

The resource controller 43 handles all messages to and from theunderlying resource system. For instance, when a customer comes into anew cell, a resource signal will come from the network to the resourcecontroller 43 of a cell agent 24. An inform message, identifying acustomer's location and associated pricing would then pass from the cellagent 24 to the parser 40 of a customer agent 20 and be handled by theWorld View 41 of the customer agent 20 to update the customer status.(This system is very similar to speech-act languages with "inform" and"uninform" affecting the internal database (World View) requests beingpassed to the negotiator and acree/unagree to the controller).

All the modules are conveniently written in an object-oriented language,in particular Prolog although certain functional elements in thenegotiator 42 and the parsers 40 I/O facilities might be written in Cfor speed and ease of implementation.

The negotiator 42 has a number of pricing strategies built in that pricein different fashions according to the stage of the negotiation and theamount of resource available against that offered. The effectiveness ofeach strategy, for instance in terms of its profit, can be used to drivethe frequency with which a strategy is employed.

Network Management Agents 23,24

The role of network management agents is to manage, monitor and cost theprovision of the basic network resources needed to provide a service.Each FNA 23 is responsible for managing a network node and each CLA 24is responsible for managing a cell transmitter 2. The mapping betweenvarious types of network management agents and the physical integratednetwork is given in FIG. 3, where the M, m, p are identifiers for theMacro, micro and pico agents respectively.

i) Fixed Network Agent (FNA) 23

These agents manage the flow of data through a network node and its 25associated links. (It should be noted that a node in this context is aswitching unit, not shown, which is smaller than a DMSU 3. Multiplenodes may be connected to a single DMSU 3, and a single FNA 23 canmanage more than one node).

Knowledge (stored & updated)

local network topology (links and node(s) managed)

neighbouring agents topology

active services along managed links

bandwidth usage

price-bandwidth table

Functions Performed

Monitor bandwidth usage along their managed physical links

Cooperate with other FNAs using a distributed routing algorithm to findthe shortest available route in the fixed network for a requestedservice

Dynamic update of the route found through the fixed network on customerdeparture from the area managed by the FNA (that is, when a customerleaves the cells connected to the FNA and enters the area of anotherFNA)

Cooperate with the CA 20 to find not only the mobile customer location(i.e. in which cell) but also if that is the right cell in terms ofbandwidth required for the service. This facility is used forintelligent downloading of data cached when the available cell bandwidthallows it.

Set up the service end-to-end connection merging the fixed network pathwith the radio paths to a customer's current cell

Control data caching at its site and then download it along theend-to-end connected path

References are made above to "data caching". This covers the storing ofdata which a customer requires for transmission to the customer when thecustomer reaches a location at which downloading is possible. Forinstance, a customer may request a service requiring significantbandwidth at his/her location, and subsequently move to a location inwhich the bandwidth is no longer available, for instance by moving froma pico cell to a macro cell of a mobile network. The relevant data musttherefore be cached until such time as the customer moves once more to alocation where downloading is possible.

ii) Cell Agent (CLA) 24

For each cell in the integrated physical network 10 there is a CellAgent 24 controlling it. Macro cells are arranged so that each isconnected to only one FNA 23. Micros and picos are all encapsulated inmacros and are connected to the macro cell in which they are embedded.Similarly, in the event that a pico is embedded geographically inside amicro it is connected to that micro cell. As shown in FIG. 3, the cellagents 24 follow the same connectivity pattern as the cell transmitters3.

Knowledge (stored & updated)

parent cell agent connected to

active services using that cell's bandwidth resources

Functions Performed

Monitor bandwidth usage inside the cell they manage

Dynamic price allocation based on current bandwidth usage level

Monitor customer entering/leaving the cell and signal the customer'spresence to his Customer Agent 20 via the parent cell agent, if any, orvia a FNA 23 if connected straight to an FNA agent.

Continuously offer resources to the Customer Agent 20. The message sentincludes the following tuple:

[Customer₋₋ Agent, Path, Bits, Price]

where:

Path is the paths from the FNA 23, down to that cell agent.

Bits represents the available bandwidth on offer

Price is the desired selling price worked out by the cell agent

The last function presented above is central to the system, creating thepossibility for resource managers of the network providers to offercontinuously available resources at variable price (depending on thecurrent bandwidth usage) to potential customers and not only when thoseresources are required by a requested service. This increases thepotential usage of network resources and implicitly creates new andflexible opportunities for the customer wanting to use those resources.

When a service is established (by negotiation with the resourcemanagers) the service is implemented by the resource managers, on behalfof the network providers rather than the service providers. At thispoint, a data download for instance might make use of caching facilitiesprovided by the fixed network.

Thus, the network management agents' job is to sell resource at a pricethat they dynamically allocate based on current bandwidth usage.

Interface Agents

i) Customer Agent (CA) 20

The role of the Customer Agent 20 is also very important in the system.It provides a `one interface per customer` facility for various types ofcustomers.

A main role is to present and negotiate customer requests for serviceswith the system. Another major role however, is to offer proactivelyvarious services to the customer when and where they become available tohim/her.

Additionally, a customer may not only request a service but may alsooffer resources that other customers want to use (i.e. databases ofinformation, people resources). The functions of the Customer Agent canbe expanded to take this into account. The following provide examples ofrelevant customer agent types:

Personal Customer Agent (deals with a person offering services orcapturing services requirements)

Database Customer Agent (manage data resources, sell data to otheragents/customers)

Computer Customer Agents (manage processor resources, provision ofon/off line computation power)

For the purposes of the present description, further details of thedesign/function requirements of the first two types of Customer Agent 20are given below. (These are relevant to the descriptions of the systemin use given under "Scenarios and Services" below.)

i)a Personal Customer Agent

Knowledge (stored & updated)

customer s current location

customer's business profile (history of services requested by thecustomer, although this may be a facility of a future business agentwhich may be added to the current system)

generic range of services offered by the relevant operator

payment requirements pre-input by the customer (optional)

billing and pricing information

Functions Performed

customisable interface (one customer agent is created for each customer)

takes customer's request for service information and mediates thedialogue with the service provider agents (SPA) 22 sending informationback to the customer

receives resource offers at a certain price from the network managementagents 23, 24 and matches them against the range of services decidingwhich services can be provided to the customer

allocates prices to services based on the price of network resources onoffer and weights them in accordance to customer's business profile

offers those services to the customer (i.e. sends available serviceinformation (Service₋₋ Type, Price) to appear as distinctive icons onthe customer's mobile handset display: the customer deciding to takeadvantage of the service offer then has only to select the relevanticon)

after taking in the customer request for a service, puts it forward tothe service provider agent 22 (eg Road Map Provision agent) and thensends a request to the relevant network management agents 23, 24 forservice set-up)

all incoming services are checked by a CA 20 before contacting thecustomer (to take account of call blocking, priority interruptions)

while a service is active and the customer is moving the Customer Agentcontinuously sends messages updating customer's current location to thenetwork management agents 23, 24 for route (of the service) updateMonitor Service quality (if there is not enough bandwidth for thatservice in the current customer's cell, the CA 20 receiving the resourceoffer from the cell may decide to downgrade the service--e.g. video linkto audio--if this is agreed by the customer, or use the cachingfacility, in the case of data transfer to the customer, to put theservice on hold till a new `valid` bandwidth offer arrives from anothercell the customer moves into)

take customer request to cancel the service and inform the other agentsresponsible for the service (i.e. the network management agents 23, 24to release the bandwidth previously used in the service).

In the early stages these agents will check a request against internalcriteria, price it by business directed pricing and establish contactswith the resource management agents to build the service. Latergenerations will learn patterns of customer behaviour, price services tostimulate revenue inside the constraints set by business agents andnegotiate the best rate for the necessary resources.

i)b Database Customer Agent

The Database Customer Agent is the interface attached to any bank ofdata that the system may facilitate access to, for various otherpersonal customers.

Knowledge (stored & updated)

Database location and its connectivity to the physical network

generic range of items offered by the database

generic payment information

current utilisation of database resources

Functions Performed

allocate prices to database services based on the current utilisation ofdata resources

offer those priced services in response to the service provider agent'srequest

after being chosen by the service provider agent 22 as a source of data,the Customer agent 20 sends a request to the relevant network managementagent 23, 24 (closest FNA 23) for data caching

when it receives the network management agent (closest FNA 23)acknowledgement the Database Customer Agent validates the transfer ofdata to be cached at FNA 23 site.

ii) Gateway Agent (GA)

Gateway agents translate between systems, effectively providing alanguage translator enabling different systems to negotiate. If theother system is not intelligent and does not negotiate, the gatewayagent can act as a shell providing an intelligent interface. Note thissuggests one gateway agent per network interface.

Service Provision Agents 22

Service provision agents 22 are not a generic family. Each type ofservice that can be offered is operated by a service provision agent.Their job is to provide the link between services and network. Forsimple point-to-point services such an agent is relatively simple.However by breaking service provision down in this way we can provideintelligence where it is needed. A service provision agent 22 can buyand sell (negotiate for) data, computing resources, people or networkbandwidth from the customer agents interfacing with such resources orfrom network management agents.

This enables the provision in a simple fashion of new intelligentservices. Rather than describe all the possible details of such agents,a typical example is given below as the SPA agent used below in the"Intelligent Services" scenario.

Knowledge (stored & updated)

Engineers it is managing

Customers registered with the service

Generic payment information

List of customers in need of service

Know where data on cars is located

Functions Performed

request time-distance to customer from engineers

match engineers to customers

inform engineers of next job

buy car repair data to pass to engineers in need

This service provision agent provides the network operator effectivelywith two customers--the person who is requesting the service and thecompany (service provider) who runs the breakdown service. Serviceprovision agents 22 can act on behalf of more than one network customer.

Scenarios and Services

The following three scenarios have been chosen to demonstrate use of theservice provision system described above.

Interactive Service Provision In this scenario a customer with atelephone moves between different types of radio cells. The underlyingnetwork equipment will detect such cell changes in known manner andupdate its location records. A resource signal is then directed from thenetwork to the resource controller of the new cell agent 24.

The cell agent 24 for the cell to which the customer moved examines thecurrent traffic load in the cell and uses an algorithm to select acapacity and price for use of the cell's facilities. It then offers thiscapacity-price tuple to the customer agent 20 of that customer. Thecustomer agent 20 then checks the range of services that the customerhas subscribed to, including any price limits the customer hasrequested, checks the price offered by the cell against any currentbusiness strategies for pricing calls and offers a list of service-pricetuples to the customer's phone unit. These might best be displayed asicons on a display of the phone unit, with the appropriate associatedpricing, or in any other suitable manner.

"Current business strategies" in this context are strategies of theservice provider which may affect the service-price tuples produced. Anexample of such a strategy might be where the service provider offers acustomer a bulk rate for a service where the customer's usage goes abovean agreed threshold.

The services offered will vary from cell to cell, with availablecapacity. A point-to-point continuous service that is extant on crossinga cell boundary but which requires more capacity than is then available,in the new cell, or which would require a significant increase in cost(say a video call on moving into a macro cell from a micro), will beeither downgraded by the customer agent to a lower call type, or willshow an increased cost. Data services which do not require a continuouslink are managed differently (see "Intelligent Data Services" below).The services displayed can include normal telephony, compressed video,full video, one-touch emergency services and two data download services,for instance.

Referring to FIG. 5, the above can be described with reference to a flowdiagram:

STEP 501: the network detects the transfer of customer equipment to anew cell

STEP 502: the network outputs a resource signal to the resourcecontroller 43 of the cell agent 24

STEP 503: the resource controller of the cell agent 24 logs an update inthe World View of the cell agent 24

STEP 504: the World View sends the update information to the negotiatorof the cell agent 24

STEP 505: the negotiator 42 generates a capacity-price tuple based onresource availability and sends it to the Customer Agent (CA) 20 for therelevant customer, via the cell agent's parent cell agent where there isone, or directly via the Network Agent 23

STEP 506: the resource controller 43 of the CA 20 receives the tuple andsends it to the World View of the CA 20

STEP 507: the World View assesses the services available and advises thenegotiator of the CA 20

STEP 508: the negotiator checks--

range of services subscribed to

price limits set by customer

current business strategies

STEP 509: negotiator generates list of service-price tuples

STEP 510: the negotiator of the CA 20 outputs the list to the customerdisplay unit

The components of the various agents can be seen from the above to dealgenerally with operations which are relevant to different operations ofthe overall system. For instance, the World View deals with data-relatedoperations, the resource controller with physical resource-relatedoperations and the negotiator with pricing operations. However, theboundaries between the types of operation performed by each componentmay be defined appropriately and may well be different in differentcircumstances.

The above scenario shows in particular the interworking between networkand customer agents.

Intelligent Data Services

In the following scenario, the customer and network agents 20, 23, 24combine to download data intelligently. A customer has requested a datadownload, for instance from an information source to his computer, orroad maps to his video phone etc. Clearly, it is preferable to thecustomer that this is done quickly and cost effectively. The parameterson either could have been set by the customer. For instance, thecustomer might specify that he wants data to be downloaded at 64 Kbit/s.He may however move to a typical macro cell, offering only a voicechannel (8 Kbit/s). The system can be set such that the data is thenretrieved, and cached by a fixed network agent (FNA) 23, but not sentyet to the customer.

In practice, the fixed network agent will generally be loaded ontocomputer facilities of some sort, and these facilities will generallyoffer storage capacity. It is to this storage capacity that the datawill be cached, the FNA 23 treating it as an available physical resourceequivalent to a network resource.

The network agent 24 requests that the customer agent 20 inform it assoon as the customer is in a cell with the right price-capacity values.That is, it effectively sets a flag in the World View 41 of the CA 20which will be triggered by information coming in from a new CLA 24. Onceinformed, the network agent 23 downloads as much data as possible untilthe customer agent 20 informs it that the customer is again changingcells. The data connection thus tracks the user round the system,exploiting the available capacity (or price) as available.

Referring to FIG. 6, this can b e described in terms of the followingflow diagram steps:

STEP 601: customer transfers to a new CLA 24

STEP 602: new CLA 24 outputs a capacity-price tuple (or relevant data)and it is recognised that the new CLA 24 cannot support further datadownload

STEP 603: the FNA 23 sets a flag in the World View of the CA 20 that theCA 20 should inform the FNA 23 as soon as the customer has moved to aCLA 24 which can support the data download, and starts to cache theincoming data

STEP 604: customer moves to second new CLA 24

STEP 605: CA 20 notifies FNA 23 that this CLA 24 can support the datadownload

STEP 606: The FNA 23 starts to download data

It may be that the customer will actually move to a cell associated witha new Network Agent 23. In this case, when the flag is triggered and theoriginal network agent 23 is notified, it will recognise that the newcell agent (CLA) 24 is not one of its own. The original NA 23 will theninterrogate one or more NAs to which it is connected, which may in turnhave to interrogate other Nas, until an NA 23 which recognises the newCLA 24 is located. The original NA 23 will then hand over all therelevant information that it holds to the new NA 23.

Intelligent Services

A third scenario demonstrates intelligent service agents. Their job isto coordinate customer agents 20 and network resources as appeared inthe previous scenario. In this scenario they demonstrate value-addedintelligence of their own.

A customer is in a car which breaks down. He touches the "emergencybreakdown" icon on his screen. The call is connected to a serviceprovider agent (SPA) 22 which requests location and fault description.The service provider agent 22 manages a group of engineers in the field.It interrogates their customer agent 20 with whom each engineer logs hiscurrent job status. The service provider agent 22 negotiates with thecustomer agent to find an engineer who can most quickly be directed tothe job then downloads the information required to the engineer. Theservice provider agent 22 thus acts on behalf of two customers thebroken down customer and the engineer agency. Such network intelligencecould be used for any dispatch service which involves scheduling.Currently it is implemented as a reactive, negotiation based service butalternative algorithms could be implemented.

The main features of this service are:

Provides a complete application for scheduling engineers

One touch service to customer--no numbers to remember

Can be expanded to range of services with the intelligence in thenetwork

Each service has a dedicated service agent--easy to produce newservices.

Again, this service can be expressed in terms of a flow diagram.Referring to FIG. 7, the steps are:

STEP 701: customer requests engineer via touch screen

STEP 702: customer's CA 20 transfers request to an SPA 22 relevant to anengineering service

STEP 703: the SPA 22 interrogates the customer's CA 20 for furtherinformation, such as location and fault description

STEP 704: the SPA 22 then interrogates each of the engineer's CAs 20,there being a CA 20 allocated to each, to obtain data on thecircumstances of each engineer

STEP 705: the SPA 22 negotiates to decide the best engineer in thecircumstances

STEP 706: the SPA 22 downloads the customer information to the selectedengineer's CA 20

It will be clear to a person skilled in this technology that there areseveral novel and advantageous aspects of a system as described abovewhich might be used, independently or in combination with other aspects.For instance, it is advantageous that, in a system as set out in claim 1below, it is possible to embed updatable business strategies, forinstance reflecting special pricing packages of the service or networkprovider.

Further, it is advantageous that a service provider, as described inrelation to FIG. 7, can automatically optimise a service offer, bytaking into account for instance real-time location and availability ofpersonnel or equipment which represent alternative sources of thatservice provider's service.

What is claimed is:
 1. A service provision system for use with acommunications network to provide a plurality of services to a networkuser, wherein data relevant to the plurality of services can be madeavailable to the user dependent upon the location of the user within thenetwork, and the user can select one or more services to be provided,said system includingcontrol means comprising a plurality of softwareagents, individual agents of said plurality comprising data relevant toservice provision the network, updating means for updating data held byat least some of said software agents on a point-by-point continuousbasis as the user changes location within the network, the control meansmaintaining and communicating the updated data made available to theuser and responsive to selection of a service by the user to trigger aprocess for providing the selected service to the user.
 2. A systemaccording to claim 1 wherein said communications network comprises atleast in part a mobile communications network and the user has access tosaid mobile network.
 3. A system according to claim 2 wherein thecontrol means is responsive to transfer of the user between cells of themobile network, said cells having different resources to offer inrespect of services to the user, to update data made available to theuser which is affected by said transfer.
 4. A system according to claim3 wherein at least one of the services potentially available to the useris affected by bandwidth availability in the cell in which the user hasaccess to the mobile network, and the control means may update the dataavailable to the user in terms of either availability of such service orthe price at which it would be available.
 5. A system according toeither of claim 3 or 4 wherein at least one of the services potentiallyavailable to the user involves the downloading of data to the user,which downloading is affected by bandwidth availability in cells of themobile network, said system further comprising means to store datarequested by the user as a consequence of selecting a service, thecontrol means controlling downloading of said data to the user such thatit is stored at times that bandwidth is not available for saiddownloading, and downloaded subsequently when bandwidth becomesavailable.
 6. A system according to claim 5 wherein the control meansincludes means for tracking the location of the user with respect to themobile network for the purpose of downloading the data to the user bymeans of appropriate routing through the communications network ornetworks.
 7. A system according to claim 1 wherein the data relevant tothe plurality of services includes real-time pricing data such that theuser can take the real-time pricing data into account prior to selectinga service.
 8. A system according to claim 1 wherein:a plurality of saidindividual agents are each allocated a facility for offering a commonservice, each of said plurality of individual agents holding real-timedata in respect of its allocated facility's capacity to offer theservice, and the system selects one of the allocated facilities on whichto base notification to the user of current conditions under which aservice might be provided.
 9. A system according to claim 1 wherein atleast one of said agents comprises means for storing an updatablebusiness strategy, and the system accesses said business strategy priorto making cost-related service data available to a user, such that saidbusiness strategy can be applied to said cost-related service data tomodify the data appropriately.
 10. A service provision system for usewith a communications network including a mobile communicationssub-network to provide a plurality of services to a network user havingaccess to the mobile sub-network, wherein data relevant to the pluralityof services can be made available to the user, dependent upon thelocation of the user within the network and the user can select one ormore services to be provided, said system comprising:control meansincluding a plurality of software agents inter-communicating with oneanother via commonly formatted messages, individual agents of saidplurality including data relevant to service provision via the network,and updating means for updating data held by at least some of saidsoftware agents on a point-by-point continuous basis as the user changeslocation within the network, the control means controlling the updateddata made available to the user and responsive to selection of a serviceby the user to trigger a process for providing the selected service tothe user via the mobile sub-network.
 11. A system as in claim 1wherein:the control means is responsive to transfer of the user betweencells of the mobile network, said cells having different resources tooffer in respect of services to the user, to update data made availableto the user which is affected by said transfer.
 12. A system as in claim11 wherein:at least one of the services potentially available to theuser is affected by bandwidth availability in the cell in which the userhas access to the mobile network, and the control means may update thedata available to the user in terms of either availability of suchservice or the price at which it would be available.
 13. A system as inclaim 11 wherein:at least one of the services potentially available tothe user involves the downloading of data to the user, which downloadingis affected by bandwidth availability in cells of the mobile network,said system further comprising means to store data requested by the useras a consequence of selecting a service, the control means controllingdownloading of said data to the user such that it is stored at timesthat bandwidth is not available for said downloading, and downloadedsubsequently when bandwidth becomes available.
 14. A system as in claim13 wherein:the control means includes means for tracking the location ofthe user with respect to the mobile network for the purpose ofdownloading the data to the user by means of appropriate routing throughthe communications network or networks.
 15. A system as in claim 10wherein:data relevant to the plurality of services includes real-timepricing data such that the user can take the real-time pricing data intoaccount prior to selecting a service.
 16. A system as in claim 10wherein:a plurality of said individual agents are each allocated afacility for offering a common service, each of said plurality ofindividual agents holding real-time data in respect of its allocatedfacility's capacity to offer the service, and the system selects one ofthe allocated facilities on which to base notification to the user ofcurrent conditions under which a service might be provided.
 17. A systemas in claim 10 wherein:at least one of said agents comprises means forstoring an updatable business strategy, and the system accesses saidbusiness strategy prior to making cost-related service data available toa user, such that said business strategy can be applied to saidcost-related service data to modify the data appropriately.
 18. A methodof service provision for use with a communications network including amobile communications sub-network to provide a plurality of services toa network user having access to the mobile sub-network, wherein datarelevant to the plurality of services can be made available to the userdependent upon the location of the user within the network, and the usercan select one or more services to be provided, said methodcomprising:using a plurality of object-oriented software agentsinter-communicating with one another via commonly formatted messages tomaintain data relevant to service provision via the network, updatingdata held by at least some of said software agents via said commonlyformatted messages on a point-by-point continuous basis as the userchanges location within the network, and controlling the updated datamade available to the user and responsive to selection of a service bythe user to trigger a process for providing the selected service to theuser via the mobile sub-network.
 19. A method as in claim 18 wherein:thetransfer of the user between cells of the mobile network havingdifferent resources to offer in respect of services to the user causesupdate data to be made available to the user which is affected by saidtransfer.
 20. A method as in claim 19 wherein at least one of theservices potentially available to the user is affected by bandwidthavailability in the cell in which the user has access to the mobilenetwork, and wherein:the data available to the user is updated in termsof either availability of such service or the price at which it would beavailable.
 21. A method as in claim 19 wherein at least one of theservices potentially available to the user involves the downloading ofdata to the user, which downloading is affected by bandwidthavailability in cells of the mobile network,said method furthercomprising: storing data requested by the user as a consequence ofselecting a service, and controlling downloading of said data to theuser such that it is stored at times that bandwidth is not available forsaid downloading, and downloaded subsequently when bandwidth becomesavailable.
 22. A method as in claim 21 further comprising:tracking thelocation of the user with respect to the mobile network for the purposeof downloading the data to the user by means of appropriate routingthrough the communications network.
 23. A method as in claim 18wherein:data relevant to the plurality of services includes real-timepricing data such that the user can take the real-time pricing data into account prior to selecting a service.
 24. A method as in claim 18wherein:a plurality of said individual agents are each allocated afacility for offering a common service, each of said plurality ofindividual agents holding real-time data in respect of its allocatedfacility's capacity to offer the service, and the system selects one ofthe allocated facilities on which to base notification to the user ofcurrent conditions under which a service might be provided.
 25. A methodas in claim 18 wherein:at least one of said agents stores an updatablebusiness strategy, and the system accesses said business strategy priorto making cost-related service data available to a user, such that saidbusiness strategy can be applied to said cost-related service data tomodify the data appropriately.